GravPy: A Python package for gravitational-wave
simulation, analysis, and detectability
GravPy is a Python package to simulate the gravitational waveforms of binary mergers of black holes and/or neutron stars, and calculate several properties of these mergers and waveforms, specifically relating to their observability by gravitational wave detectors.
GravPy is a Python package designed to simulate, detect, and analyze continuous gravitational wave-forms. In addition to creating simulations of gravitational waves, GravPy also takes in observed data from gravitational wave detectors, such as the Laser Interferometer Space Antenna (LISA), to predict detection rates for stellar-origin binaries.
The space-based gravitational wave detector LISA presents a new view of gravitational waves by focusing on lower frequencies \(\left( 10^{−5} \lt f / \mathrm{Hz} \lt 10^{-1} \right)\) than ground-based detectors. This enables the study of many new source classes including mergers of supermassive black holes, extreme mass ratio inspirals, and cosmological GW backgrounds. The lower frequency level is also of interest for the detection of local stellar-mass binaries during their inspiral phase. LISA is expected to detect Galactic stellar-origin binaries containing combinations of white dwarfs, neutron stars, and black holes, ranging from the numerous double white dwarf population, to the rare but loud double black hole population.
Specifically, we implement the expressions for the evolution of binary orbits due to the emission of gravitational waves, equations for the strain amplitudes and signal-to-noise ratios of binaries, and approximations for the LISA sensitivity curves.
GravPy represents an implementation of gravitational wave tools, focusing on an optimized approach for specific spectrums and source classes. With this package, it’s possible to evolve the orbits of binaries and calculate their strain amplitudes given any range of frequency harmonics. The package also provides a way to compute the sensitivity curve for gravitational wave detectors, and consequently use the curve to calculate the signal-to-noise ratio of a collection of sources. Furthermore, the package provides tools and plotting functions for visualizing all of the results.
Simulating the gravitational waveform signal from a binary merger of two black holes, two neutron stars or a black hole and a neutron star and outputting the data of this signal in terms of frequency and strain amplitude.
Using a gravitational wave output and given a detector noise spectrum (such spectra are made publicly available by LIGO), calculating the signal-to-noise ratio (SNR) of the signal at a given distance assuming optimal alignment.
Calculating the horizon distance (maximum distance at which an event could be observed) for a gravitational wave model and a given detector.
Given the optimal-alignment SNR of an event, evaluating its detectability, the probability that the event would be detected with a SNR above the commonly used threshold of 8, if the alignment would be arbitrary. These results could then be combined with population synthesis calculations to estimate how many of the predicted mergers would be detected.
The gravitational waveform simulation of Riroriro is based on a computational implementation of an earlier theoretical gravitational waveform model, using post-Newtonian expansions and an approximation called the implicit rotating source to simplify the Einstein field equations and simulate gravitational waves.
Observations of gravitational waves from binary mergers can provide unique information about their progenitors and stellar populations, especially when combined with electromagnetic observations in the field called multi-messenger astronomy. A major factor in the successful detection and analysis of gravitational wave signals is the creation of simulations of such signals which observed data can be compared to. Because of this, multiple gravitational wave models have been created over the years. In particular, the gravitational wave observatories LIGO and Virgo have created their own models to use as templates in gravitational wave searches, with the main software for this being LALSuite (LIGO Scientific Collaboration, 2018). Various research groups have created waveform models, with some examples of recent sophisticated waveform models being IMRPhenomXPHM (Pratten et al., 2020) and SEOBNRv4PHM (Ossokine et al., 2020), which are both also available in LALSuite.
What data did you use? How was it obtained? What are its limitations?
How users will interact with your system in a way that addresses the problem area.
Demonstrate your software.
Describe the components and how they interact to accomplish the use cases.
Show the structure of your github repository.
Focus on software engineering lessons.